;; The first four lines of this file were added by Dracula.
;; They tell DrScheme that this is a Dracula Modular ACL2 program.
;; Leave these lines unchanged so that DrScheme can properly load this file.
#reader(planet "reader.rkt" ("cce" "dracula.plt") "modular" "lang")
(require "Idriver.lisp")
(require "Iavltree.lisp")

(module Mdriver-private

  (import Iavltree)
  
  (set-state-ok T)
  (include-book "io-utilities" :dir :teachpacks)
  (include-book "list-utilities" :dir :teachpacks)

#| *** i/o helpers ***
|#
;; reads input text file as a list of strings
; new string indicated by #\Newline character
  (defun input-as-strings (str)
    (map-chrs->str (remove nil (packets-set (list (code-char 10) (code-char 13)) (str->chrs str)))))
#| -------------------------------------------|#

#| *** functions to handle data file ***
|#
;; gets tokens which are seperated by #\, for later storing into an avl tree 
; for each data string of a ticker on a specific day
(defun get-group-specs (strs)
  (if (consp (cdr strs))
      (cons (map-chrs->str (packets #\, (str->chrs (car strs)))) (get-data-strs (cdr strs)))
      nil))
  
  (defun team-creator (input-file output-file)
    (cons input-file output-file)
  )     
  
  (export Idriver)
)

(link Mdriver
  (import Iavltree)
  (export Idriver)
  (Mdriver-private)
)
